/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package drt;

import java.util.Map;

/**
 * expression has type e
 * @author phong
 */
public interface DrtEntity extends DrtExpression{
    
    public String getName();
    
    /*
     * this function actually is not neccessary because each var / ref has
     * a unique name
     */
    public void setName(String name);
    
    @Override
    public DrtEntity simplify();
    
    @Override
    public DrtEntity replace(DrtVariable var, DrtExpression exp);
    
    @Override
    public DrtEntity getTemplate(Map<String,String> map);
}
